//计算1！+2！+3！+。。。+n！

//(1)正常循环算每一个数字的阶乘，然后相加。
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>

int main()
{
	int num = 0;
	int i = 0;
	int j = 0;
	int sum = 0;
	scanf("%d", &num);
	for (i = 1; i <= num; i++)
	{
		int ret = 1;
		for (j = 1; j <= i; j++)
		{
			ret *= j;
		}
		sum += ret;
	}
	printf("%d", sum);
	return 0;
}

//(2) 代码简化，因为2！* 3=3！  即：n！*（n+1）=（n+1）！
int main()
{
	int num = 0;
	int i = 0;
	int j = 0;
	int sum = 0;
	int ret = 1;
	scanf("%d", &num);
	for (i = 1; i <= num; i++)
	{
		ret *= i;        //将ret的值一直往下算，每乘一个数就是下一个数的阶乘，再把数相加到sum里。
		sum += ret;
	}
	printf("%d", sum);
	return 0;
}